The present invention relates to the field of portals, and more particularly to techniques for using attributes to describe portal entities.
Portals such as enterprise portals provide a central gateway through which users can access different types of information and services such as enterprise information, applications including portal and other applications, databases, data warehouses, desktop documents, web content and services, and the like. A portal thus unifies independent information systems into a single, seamless user experience. For an enterprise, a portal acts as a single point of access for heterogeneous business applications and collaboration, providing the information and tools needed by a user within the enterprise.
The success of any portal depends on the applications and content supported by the portal. Accordingly, an ever increasing number of applications are being developed for portals by developers. Several portal vendors also provide Portal Development Kits (PDKs) to facilitate and simplify the task of developing portal applications and deploying the applications to the target portals. For example, developers may create code files and other files that implement a portal application using a PDK and then deploy the files to the portal where the portal application is to be executed.
A portal application may comprise one or more portal entities. A portal entity may be a user interface component, a portal snippet, a service, and the like. Portal snippets are portal entities that are configured to display information in various formats, such as text, figures, graphs, reports, tables, charts, etc., to a portal user. Portal snippets are used to organize content on portals pages and support the integration of information and functions from a wide range of sources. For example, a portal snippet may be programmed to extract financial information (e.g., stocks information) from various financial repositories and display the information to the user. A portal page may comprise one or more portal snippets. Examples of portal snippets include portlets, iViews from SAP, gadgets from Plumtree, web parts from Microsoft Corporation, and others.
The portal entities may be based upon one or more items that may be developed by developers or may be created from other sources. Examples of items include code files (e.g., *.aspx files, *.ascx files), text files, images, dynamic link libraries (dlls), executables, JARs (Java compiled code), resources, and the like.
When a portal application is to be deployed to a target portal, information declaring the various portal entities is created and provided to the portal. This information may be referred to as “portal entity definition information”. The portal entity definition information may comprise various types of information related to one or more portal entities. For example, the portal entity definition information may comprise information identifying the name of a portal entity, class information for a portal entity, information identifying a portal entity type, dependency information, security settings information, properties information (e.g., profile or personalization settings information), code links, etc. The portal entity definition information is made available to the target portal and used by the target portal to execute (e.g., display, render, etc.) the portal entity. In some implementations, an archive (e.g., a compressed package) is generated comprising the items for a portal application and the portal entity definition information describing the various portal entities. The archive is then deployed to the target portal.
Conventionally, the portal entity definition information is manually configured. This task can be quite time consuming and tedious task as the developer has to define the portal entities and then determine information for each portal entity. This is especially cumbersome for determining properties information for the portal entities. The developer generating the portal entity definition information also has to remember the exact format and syntax to be used for creating the portal entity definition information . As a result, the task of manually generating portal entity definition information is tedious and time consuming. This in turn makes the creation and deployment of portal applications and portal entities a complicated and time consuming process.